/**
 * Package for EnterpriseAssets area classes.
 */
jsx3.lang.Package.definePackage("tibco.admin.enterpriseAssets", function() {
});

/**
 * Interface to be implemented by all plugin components wishing to create a new tab in the Enterprise Assets
 * perspective area.
 */
jsx3.lang.Class.defineInterface(
        "tibco.admin.enterpriseAssets.EnterpriseAssetsTabInterface",
        tibco.admin.plugin.PluginInterface,
        function(plugin) {

            /**
             * Abstract method to be implemented by plugin components.  Should return the text that
             * will appear on the tab for the plugin component.
             *
             * @return {String} the text to appear on this plugin component's tab.
             */
            plugin.prototype.getTabText = jsx3.lang.Method.newAbstract();

            /**
            * Preimplemented asan empty function for backwards compatibility.  Plguin components should override this
            * function to handle refreshes of data when the tab is selected again.  Called by the parent plugin container
            * whenever this plugin component's tab is selected.
            */
            plugin.prototype.tabSelected = function() {
            }
        }
        );